function casSel(divlevel1, divlevel2, divlevel3,focusID) {

	
	
	var opt1 = {
		className : 'selectTest',
		// focusID:["sendSiteName"],//聚焦的输入框或元素id
		focusID : focusID,// 聚焦的输入框或元素id
		onFocus:function(focusObj,selObj){//聚焦输入框后触发
			//输入框聚焦的时候清除第一级以外的所有缓存防止数据冲突
			$("#"+divlevel2).wdfSelect("closeSel");
			$("#"+divlevel3).wdfSelect("closeSel");
			
		},
		// isCheckBox:true,//是否显示选择框
		// isMulitCheck:true,//是否支持多选
		list : [{
			title : "选择省份",// 分类标题
			label : "text",// 要被显示出来的字段属性名称
			url : basePath
					+ "/action/system/codetree/showCodetree.action?&id=402881e74217e2dd014217ed70320008",// 数据请求地址
			// root:"appSyss",//数据集合对象名
			// param:null,//要向服务端发送的参数,
			colCount : "3",// 每行显示的数量
			click : function(obj, data) {
				opt2.list[0].url = basePath
						+ "/action/system/codetree/showCodetree.action?&id="
						+ data.id;
				$("#" + divlevel2).wdfSelect("init", opt2);
			}
		}]
	};

	var opt2 = {
		className : 'selectTest',
		// isCheckBox:true,//是否显示选择框
		// isMulitCheck:true,//是否支持多选
		list : [{
			title : "",// 分类标题
			label : "text",// 要被显示出来的字段属性名称
			url : basePath + "action/system/appmgr/testWdfGridTest",// 数据请求地址
			// root:"appSyss",//数据集合对象名
			// param:null,//要向服务端发送的参数,
			colCount : "3",// 每行显示的数量
			click : function(obj, data) {
				// $("#"+backId).val(data.id);
				// $("#"+backName).val(data.text);
				// $("#"+divlevel2+"").wdfSelect("hidSel");
				opt3.list[0].url = basePath
						+ "/action/system/codetree/showCodetree.action?&id="
						+ data.id;
				$("#"+divlevel3).wdfSelect("init", opt3);
			}
		}],// 分类列表
		// 确定按钮事件，如果该事件为空则不显示该按钮，选中的数据集合、按钮对象、当前控件对象
		/*
		 * isOkBtnClick:function(okBtn){ var
		 * selDatas=$("#test_WdfSelect").wdfSelect("getSelDatas");
		 * alert(selDatas.length); },
		 */
		onDataLoaded : function(selectObj) {// 数据装载完成后触发
			wdfSelMove("next", selectObj, $("#" + divlevel1 + "_WdfSelect"));
		},
		lastBtn : function(selectObj) {
			wdfSelMove("last", $("#" + divlevel1 + "_WdfSelect"), selectObj);
		}
	};

	
	var opt3 = {
		className : 'selectTest',
		//isCheckBox:true,//是否显示选择框
		//isMulitCheck : true,// 是否支持多选
		//缓存当前级并在输入框后显示返回按钮点击该按钮重回当前级,这里是输入框id数组
		replay:focusID,
		list : [{
					title : "选择3",// 分类标题
					label : "text",// 要被显示出来的字段属性名称
					url : basePath + "action/system/appmgr/testWdfGridTest",// 数据请求地址
					// root:"appSyss",//数据集合对象名
					// param:null,//要向服务端发送的参数,
					colCount : "3",// 每行显示的数量
					click : function(obj, data) {
						
						if(focusID&&focusID.length>0){
							for (var i = 0; i < focusID.length; i++) {
								var focusInput=$("input[id='"+focusID[i]+"']");
								if(focusInput.attr("wdfselfocus")=="focus"){
									$("input[id='"+focusID[i].substr(0,focusID[i].length-4)+"']").val(data.id);
									focusInput.val(data.text);
									break;
								}
							}
						}
						
						
						$("#"+divlevel3).wdfSelect("hidSel");
					}
				}],// 分类列表
		// 确定按钮事件，如果该事件为空则不显示该按钮，选中的数据集合、按钮对象、当前控件对象
		/*
		 isOkBtnClick:function(okBtn){ var
		 selDatas=$("#classify2").wdfSelect("getSelDatas");
		 $("#textfield").val(""); $(selDatas).each(function(i){
		 $("#textfield").val($("#textfield").val()+","+this.appName); }); },*/
		 
		onDataLoaded : function(selectObj) {// 数据装载完成后触发

			wdfSelMove("next", selectObj, $("#" + divlevel2 + "_WdfSelect"));

		},
		lastBtn : function(selectObj) {
			wdfSelMove("last", $("#" + divlevel2 + "_WdfSelect"), selectObj);
		}
	};

	/**
	 * acion 移动方式(last/next)
	 */
	function wdfSelMove(action, showObj, hidObj) {
		if (action == 'next') {
			showObj.css("display", "block");
			showObj.css({
						left : hidObj.offset().left + hidObj.width() + 50,
						top : hidObj.offset().top
					});
			showObj.animate({
						opacity : 1,
						left : hidObj.offset().left,
						top : hidObj.offset().top
					}, 500);
			hidObj.animate({
						opacity : 0,
						left : hidObj.offset().left - hidObj.width()
					}, 500);
			setTimeout(function() {
						hidObj.css("display", "none");
					}, 500);
		} else if (action == 'last') {
			showObj.css("display", "block");
			hidObj.animate({
						opacity : 0,
						left : hidObj.offset().left + showObj.width() + 50
					}, 500);
			showObj.animate({
						opacity : 1,
						left : showObj.offset().left + showObj.width()
					}, 500);
			setTimeout(function() {
						hidObj.remove();
					}, 500);
		}

	}

	return {
		opt1 : opt1,
		opt2 : opt2,
		opt3 : opt3
	};

}
